1. Field of the Invention
The present relates to a pattern generator which generates patterns for testing logic circuits as well as for memories.
2. The Related Art
Heretofore, an algorithmic pattern generator has been used to generate patterns for testing semiconductor memories as disclosed in U.S. Pat. No. 4,293,950 or 4,797,886, for instance. In the conventional algorithmic pattern generator an instruction memory 12 is accessed using an address produced by a program counter, as schematically shown in FIG. 1. The instruction memory 12 is composed of an operation code field 13 which has stored therein instructions for JUMP, LOOP and other operations, an operand field 14 in which is stored an operand such as a loop count corresponding to, for example, the LOOP instruction of the operation code field 13, and a field 15 in which an address computing instruction, a data computing instruction and a control signal are stored. These fields 13, 14 and 15 are simultaneously read out at each address. The instruction from the operation code field 13 is decoded by an instruction decoder 16, by which the value of a program counter 11 is modified to, for example, a jump address of the JUMP instruction. In response to the instructions read out of the field 15, an arithmetic unit 17 generates an address pattern AP which is applied to a memory under test (not shown), a data pattern DP which is written into the memory under test and an expectation pattern EP of data which is output from the memory under test. Further, the arithmetic unit responds to the control signal from the field 15 to generate a write instruction and an instruction for comparison with the expectation pattern.
With the recent progress of semiconductor technology, there has emerged a memory for specific use which has incorporated therein a large number of logic circuits instead of providing therearound control circuits, as in normal memories.
Test patterns and expectation patterns for logic circuits are random patterns in many cases, and it has been considered impossible to employ the conventional algorithmic pattern generator for the generation of such random patterns, because it requires therefore an instruction memory of a storage capacity large enough to store an enormous number of instruction steps.